home *** CD-ROM | disk | FTP | other *** search
-
- 08-Dec-1984
-
- This document describes delta.exe and get.exe, which are
- prototypes of two support programs for what is intended to become
- a full source code control system for MS-DOS machines. The
- primary module of the system is the hdiff program, a file
- comparator which is available (along with documentation and some
- demo files) in this database as hdiff.bin (which is actually
- hdiff.lbr). I assume here that you have the hdiff library and
- have read the documentation there.
-
- Delta.exe and get.exe replace the two sample batch files in the
- hdiff library, cdelta.bat and cget.bat.
-
-
- General use
- -----------
-
- The "source code control system", as currently defined, is very
- modest by UNIX or mainframe standards (gradual enhancement is
- planned until a real SCCS is available; bear with me). The
- current administrative programs are hdiff, delta, get, and the
- DOS text editor, edlin. Most of the "bookkeeping" is still your
- responsibility.
-
- For a general discussion of the techniques of retaining multiple
- versions of the file, see the hdiff document. Specifics
- pertaining to delta and get are as follows; the examples assume
- that the source file in question is "foo.asm".
-
- 1. You must retain a "base" file. This is a copy of the
- earliest version of the file, and it must have the extension
- "scc". For example, the earliest version of foo.asm would be
- stored in a file called foo.scc.
-
- 2. Version numbers are three-digit numerics; decimal point is
- irrelevant as far as delta and get are concerned. Difference
- files are stored as foo.110, foo.111, foo.120, and so on
- (versions 1.10, 1.11, and 1.20). These files contain edlin
- scripts which will convert foo.scc into foo.asm; for example,
- foo.scc + foo.120 => foo.asm, version 1.20.
-
- 3. Delta uses hdiff, which must therefore be online at the time
- delta is run (either in the same directory or in any directory
- which will be searched according to the current PATH). Get uses
- edlin, which must be similarly available.
-
- 4. For the present, the source-related files must be in the same
- directory: the base (.scc) file and the current version of the
- source (for delta), or the base file and the required difference
- file (for get).
-
-
- Delta
- -----
-
- Delta uses hdiff to build a difference file. The syntax is:
-
- delta [-maxlines] [path]file.ext [ver]
-
- The -maxlines switch is identical to the equivalent switch in
- hdiff (in fact, it is passed to hdiff unaltered). The file
- specification is the name of the file containing the current
- version of the source; it will be hdiff'd with [d:path\]file.scc.
- The version parameter specifies the version number; it will be
- used as the extension of the difference file. For example:
-
- delta -3000 c:foo.asm 125
-
- will execute hdiff, setting maxlines to 3000; hdiff will be
- instructed to compare c:foo.scc and c:foo.asm, and the resulting
- difference file will be written to c:foo.125.
-
- If the version is omitted, hdiff will create a difference file
- with an extension equal to the highest extension found, plus one.
- E.g., if the latest foo.ver file is foo.120, delta will create
- foo.121. If no version number is specified, and delta cannot
- find any old differences file, it will create version 1.00.
-
- Note that delta does not examine the maxlines switch; it is
- simply passed to hdiff without comment. If the switch is invalid
- for any reason, hdiff will issue a message and cancel. Delta
- will nonetheless report a successful run; this message should be
- ignored.
-
-
- Get
- ---
-
- Get creates a full source file by combining a base (.scc) file
- and a difference file. The syntax is:
-
- get [path]file.ext [ver]
-
- For example,
-
- get c:\util\foo.asm 120
-
- will combine c:\util\foo.scc and c:\util\foo.120 (using edlin) to
- create c:\util\foo.asm. If the version number is omitted, get
- will retrieve the highest numbered version it can find. For,
- example, if the directory contains:
-
- foo.scc
- foo.125
- foo.120
- foo.130
- foo.110
-
- the command
-
- get foo.asm
-
- will create a copy of version 1.30. Note that version numbers
- containing alpha characters (like foo.12A) will not parse
- correctly and will be ignored, so I suggest that you stick with
- all numeric version numbers.
-
- Note that the typical use of delta and get will be very simple:
-
- delta foo.asm
- get foo.asm
-
-
- The usual caveat
- ----------------
-
- Please consider all three modules (hdiff, get, and delta) to be
- experimental or beta test versions. Hdiff has proven thus far to
- be reliable, but it is a fairly tricky program and there could be
- errors. Until more experience is gained, I suggest that you use
- the following technique when storing a new version:
-
- delta foo.asm
- get foo.tmp
- comp foo.asm foo.tmp
-
- If there are any problems, they will be reported by the "comp"
- step. Please report such problems to me. If foo.asm and foo.tmp
- compare OK, you can safely erase both files.
-
-
- ---------------------------------------
-
- Hdiff.exe, get.exe, delta.exe, and this document are
- Copyright (c) 1984 by
- Christopher J. Dunford
- 10057-2 Windstream Drive
- Columbia, MD 21044
- CIS 71076,1115